<?php
namespace app\api\controller;



use app\common\controller\Common;
use think\Log;
use think\Request;


class Index extends Common
{
    /**
     * @title 充值成功回调
     * @description 接口说明
     * @author WCJ
     * @url /api/index/recharge_alipay_notify
     * @method POST
     *
     *
     */
    public function recharge_alipay_notify(Request $request)
    {
        $out_trade_no = input('out_trade_no');
        //支付宝交易号
        $trade_no = input('trade_no');
        //交易状态
        $trade_status = input('trade_status');

        Log::info("进入了啊啊啊啊啊回调");


        if ($trade_status == 'TRADE_FINISHED' || $trade_status == 'TRADE_SUCCESS') {


            $result= \app\common\logic\Recharge::alipay_notify($out_trade_no,$trade_no);

            if($result["code"]==200){
                echo 'success';
            }else{
                echo 'fail';
            }

        }else{
            echo "fail";
        }

    }

    /**
     * @title 支付成功回调
     * @description 接口说明
     * @author WCJ
     * @url /api/index/pay_alipay_notify
     * @method POST
     *
     *
     */
    public function pay_alipay_notify(Request $request)
    {
        $out_trade_no = input('out_trade_no');
        //支付宝交易号
        $trade_no = input('trade_no');
        //交易状态
        $trade_status = input('trade_status');

        Log::info("进入回调");
        if ($trade_status == 'TRADE_FINISHED' || $trade_status == 'TRADE_SUCCESS') {

            $paylogic=new \app\common\logic\Pay();
            $result= $paylogic->alipay_notify($out_trade_no,$trade_no);

            if($result["code"]==200){
                echo 'success';
            }else{
                echo 'fail';
            }

        }else{
            echo "fail";
        }

    }


    public function recharge_wx_notify()
    {
        Log::info("微信回调");
        $xml = file_get_contents('php://input');
        $arr = json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), true);
        //用户http_build_query()将数据转成URL键值对形式
//        $sign = http_build_query($arr);
//        //md5处理
//        $sign = md5($sign);
//        //转大写
//        $sign = strtoupper($sign);
        //验签名。默认支持MD5
        if ( $arr['result_code']=='SUCCESS') {

            $result= \app\common\logic\Recharge::alipay_notify($arr['out_trade_no'],$arr['transaction_id']);
            echo $arr['result_code'];
        }else{
            echo 'FAIL';
        }
    }


    public function pay_wx_notify()
    {
        Log::info("微信回调");
        $xml = file_get_contents('php://input');
        $arr = json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), true);
        //用户http_build_query()将数据转成URL键值对形式
//        $sign = http_build_query($arr);
//        //md5处理
//        $sign = md5($sign);
//        //转大写
//        $sign = strtoupper($sign);
        //验签名。默认支持MD5
        if ( $arr['result_code']=='SUCCESS') {

            $paylogic=new \app\common\logic\Pay();
            $result= $paylogic->alipay_notify($arr['out_trade_no'],$arr['transaction_id']);
            if($result['code']==200){
                echo $arr['result_code'];
            }

        }else{
            echo 'FAIL';
        }
    }

}
